// pages/order/index.js

import {request} from "../../request/index.js"
import regeneratorRuntime from "../../lib/runtime/runtime.js";


Page({

  /**
   * 页面的初始数据
   */
  data: {
    orders:[],
    tabs:[
      {
        id:0,
        value:'全部',
        isActive:true
      },
      {
        id:1,
        value:'待付款',
        isActive:false
      },
      {
        id:2,
        value:'待发货',
        isActive:false
      },
      {
        id:3,
        value:'退款/退货',
        isActive:false
      }
    ]
  },

    /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    // const token = wx.getStorageSync('token');
    // if(!token){
    //   wx.navigateTo({
    //     url: '/pages/auth/index' 
    //   });
    //   return;  
    // }
 
    // 1 获取当前的小程序 页面栈数组 长度最大是 10 
    let  pages = getCurrentPages();
    // 2 数组中 索引最大的页面就是当前页面
    let  currentPage = pages[pages.length-1]; 
    console.log(currentPage.options);
    // 3 获取url 上的 type 参数
    const {type} = currentPage.options
    // 4 激活选中的页面标题
    this.changeTitleByIndex(type-1)
    // 5 发送请求的数据
    this.getOrders(type)
  },

 
  // 获取订单列表的方法
  async getOrders(type){
    // const res = await request({url:"/my/orders/all",data:{type}})
    // console.log(res)
    const res = [
      {
        order_id:1104,
        order_number:'HM234234234234234',
        order_price: 13618,
        create_time:1611844170
      },
      {
        order_id:1104,
        order_number:'HM234234234234234',
        order_price: 13618,
        create_time:1611844170
      },
    ]
    this.setData({
      orders:res.map(v=>({...v,create_time_cn:(new Date(v.create_time*1000).toLocaleString())}))
    })
  },
  // 根据标题索引来激活选中的 标题数组
  changeTitleByIndex(index){
      // 2 修改源数据
      let {tabs} = this.data;
      tabs.forEach( (v,i)=>i === index ? v.isActive = true : v.isActive = false ) 
      // 3 赋值到 data 中
      this.setData({
        tabs
      }) 
  },
  // 标题点击 
  handleTabsItemChange(e){
    // 1 获取被点击的标题索引
    const {index} = e.detail 
    // console.log(index) 
    this.changeTitleByIndex(index)
    // 2 重新发送请求
    this.getOrders(index + 1)
  },

   /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

 
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})